The present invention is related to the searching of information repositories such as databases, and in particular to a facility for generating and building dynamic queries.
Every day more information becomes available electronically over networks. Far from growing linearly, this growth is driven by numerous factors like the increasing accessibility to more media of information, the growing power of computers and networks, and the ever more data-intensive applications we are working with.
This gold mine of data however suffers from a lack of structure and consistency: the Web is unstructured and uncontrolled by nature, whereas structured databases use a widening variety of formats, either standardized or proprietary.
When accessing heterogeneous legacy databases on Intranets or while querying multiple information sources on the Internet, the end-user only wants to have a simple and straightforward point of access.
With classical tools, finding the right information to suit each user""s needs is now the problem, for anything but the easiest of searches. The user must master different protocols; different database access methods; different document formats; and then use the information from one search to manually drive another. Thus, there is a need for information retrieval systems and approaches for easily interfacing into multiple information sources.
An exemplary information retrieval architecture is described in the article entitled xe2x80x9cSystem Components For Embedded Information Retrieval From Multiple Disparate Information Sourcesxe2x80x9d, Ramana B. Rao, Daniel M. Russell, and Jock D. Mackinlay, Proceedings of 1993 ACM Symposium on User Interface Software and Technology, Atlanta, Ga., November 1993 ACM SIGGRAPH and SIGCHI. The architecture incorporates an intermediary server which mediates access requests between an information access client (i.e. the user) and various information sources. Thus, the user only needs to interface with the information access client in order to retrieve the information from multiple information sources.
Another difficulty in information retrieval is query generation. The process of generating an effective query is often an iterative one. In such a process, the results of one query are then used to formulate a second, often more narrow query. This occurs because the first query may have been too broad in scope and had returned large amounts of unusable or redundant data. Moreover, known query systems are xe2x80x9cstaticxe2x80x9d in nature. In other: words, in order for query to begin, all of the query terms must be fixed. However, because of the vast amount of information constantly becoming available on the World Wide Web, it would be desirable to make queries more dynamic in nature. Further, since the information repositories are disparate, portions of the query may be running in parallel. Thus, it would be desirable to be able to specify and execute a query that is dynamic in nature so that search terms are not static.
The present invention is related to the searching of network accessible distributed databases, such as those found on the Internet. Drag and drop search channels are described which enable the combining of queries. A query is visually displayed on the display of a computer system as a query window. The query window will provide for the input of attributes that define the nature and scope of intended query. The attributes may be logically combined to create the intended query. Each attribute specification is represented as an object. In order to include an attribute of a first query as an attribute of a second query, a user selects an attribute, wherein a graphical representation of the attribute is created. The user then xe2x80x9cdrags and dropsxe2x80x9d the graphical representation of the attribute to an attribute specification area of the second query. Thus, a channel of communication between two queries is established which can have the properties described below.
The Drag and Drop Search channels provide Computational Transformations. Computational Transformations allows for the automatic adaptation of the results associated with a channel to the query context. For example, a query attribute may returns results in the English language, whereas the target query would like results in the French language. Thus, a computational transformation could be automatically invoked to translate the results from English to French.
The Drag and Drop Search channels further provides for the ability to create compound queries dynamically and incrementally. Heretofore, query attributes must be defined before they are executed. However this is not always the most effective way to create compound queries. Often the inspection of query results leads to new ideas on how to use them. But, using already obtained query results as input for another query is only possible, if queries can be combined dynamically. The present invention permits queries to be modified dynamically, even while the query is currently running.
The Drag and Drop Search channels further provide breakpoints so that search results may be operated on and manually filtered by the user.